home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Bank smakow / BankSmakow.air / BankSmakow.swf / scripts / air / update / utils / VersionUtils.as < prev   
Text File  |  2009-12-16  |  4KB  |  110 lines

  1. package air.update.utils
  2. {
  3.    import flash.desktop.NativeApplication;
  4.    
  5.    public class VersionUtils
  6.    {
  7.       
  8.       private static const SPECIALS:Array = ["alpha","beta","rc"];
  9.        
  10.       
  11.       public function VersionUtils()
  12.       {
  13.          super();
  14.       }
  15.       
  16.       public static function isNewerVersion(param1:String, param2:String) : Boolean
  17.       {
  18.          var _loc9_:String = null;
  19.          var _loc10_:String = null;
  20.          var _loc11_:Boolean = false;
  21.          var _loc12_:Boolean = false;
  22.          var _loc13_:uint = 0;
  23.          var _loc14_:uint = 0;
  24.          var _loc15_:int = 0;
  25.          var _loc16_:int = 0;
  26.          var _loc17_:String = null;
  27.          var _loc18_:String = null;
  28.          var _loc3_:String = param1.replace(/[+\-_ ]/g,".").replace(/\.(\.)+/g,".").replace(/([^\d\.])([^\D\.])/g,"$1.$2").replace(/([^\D\.])([^\d\.])/g,"$1.$2");
  29.          var _loc4_:String = param2.replace(/[+\-_ ]/g,".").replace(/\.(\.)+/g,".").replace(/([^\d\.])([^\D\.])/g,"$1.$2").replace(/([^\D\.])([^\d\.])/g,"$1.$2");
  30.          var _loc5_:Array = _loc3_.split(".");
  31.          var _loc6_:Array = _loc4_.split(".");
  32.          var _loc7_:int = Math.min(_loc5_.length,_loc6_.length);
  33.          var _loc8_:int = 0;
  34.          while(_loc8_ < _loc7_)
  35.          {
  36.             _loc9_ = _loc5_[_loc8_];
  37.             _loc10_ = _loc6_[_loc8_];
  38.             _loc11_ = StringUtils.isDigit(_loc9_.charAt(0));
  39.             _loc12_ = StringUtils.isDigit(_loc10_.charAt(0));
  40.             if(_loc11_ && _loc12_)
  41.             {
  42.                _loc13_ = uint(_loc9_);
  43.                if((_loc14_ = uint(_loc10_)) != _loc13_)
  44.                {
  45.                   return _loc14_ > _loc13_;
  46.                }
  47.             }
  48.             else
  49.             {
  50.                if(!(!_loc11_ && !_loc12_))
  51.                {
  52.                   if(_loc11_)
  53.                   {
  54.                      return false;
  55.                   }
  56.                   return true;
  57.                }
  58.                _loc15_ = SPECIALS.indexOf(_loc9_.toLowerCase());
  59.                _loc16_ = SPECIALS.indexOf(_loc10_.toLowerCase());
  60.                if(_loc15_ != -1 && _loc16_ != -1)
  61.                {
  62.                   if(_loc15_ != _loc16_)
  63.                   {
  64.                      return _loc16_ > _loc15_;
  65.                   }
  66.                }
  67.                else
  68.                {
  69.                   _loc17_ = _loc9_.toLowerCase();
  70.                   if((_loc18_ = _loc10_.toLowerCase()) != _loc17_)
  71.                   {
  72.                      return _loc18_ > _loc17_;
  73.                   }
  74.                }
  75.             }
  76.             _loc8_++;
  77.          }
  78.          if(_loc5_.length == _loc6_.length)
  79.          {
  80.             return false;
  81.          }
  82.          if(_loc5_.length > _loc6_.length)
  83.          {
  84.             if(StringUtils.isDigit(_loc5_[_loc7_].charAt(0)))
  85.             {
  86.                return false;
  87.             }
  88.             return true;
  89.          }
  90.          if(StringUtils.isDigit(_loc6_[_loc7_].charAt(0)))
  91.          {
  92.             return true;
  93.          }
  94.          return false;
  95.       }
  96.       
  97.       public static function getApplicationVersion() : String
  98.       {
  99.          var _loc1_:XML = NativeApplication.nativeApplication.applicationDescriptor;
  100.          var _loc2_:Namespace = _loc1_.namespace();
  101.          return _loc1_._loc2_::version;
  102.       }
  103.       
  104.       public static function getApplicationID() : String
  105.       {
  106.          return NativeApplication.nativeApplication.applicationID;
  107.       }
  108.    }
  109. }
  110.